package com.lzq.mq.nameserver.store;


import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.HashMap;
import java.util.Map;

/**
 * 服务实例对象
 * 支持broker, 其他的nameserver节的注册
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class ServiceInstance {

    /**
     * 注册服务类型
     */
    private String registryType;

    /**
     * broker服务的ip
     */
    private String ip;

    /**
     * broker服务的端口
     */
    private Integer port;

    /**
     * broker注册时间
     */
    private Long firstRegistryTime;

    /**
     * broker上一次心跳时间
     */
    private Long lastHeartBeatTime;

    /**
     * broker的上下文属性
     */
    private Map<String,Object> attrs = new HashMap<>();
}
